package com.smart.expand.config;

import com.smart.expand.bean.AnnotationMapping;
import com.smart.expand.factory.ProxyBeanFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;

import java.util.*;

/**
 * @author jiangjun
 */
@Configuration
@EnableConfigurationProperties
@Import({BeanRegisterConfiguration.class, BeanInitializeConfiguration.class, BeanRunnerConfiguration.class})
public class BeanAutoConfiguration {
    private static final Logger log = LoggerFactory.getLogger(BeanAutoConfiguration.class);

    @Bean
    public Map<String, AnnotationMapping> annotationMapping() {
        Map<String, AnnotationMapping> annotationMappings = new HashMap<>();
        return annotationMappings;
    }

    @Bean
    public ProxyBeanFactory poxyBeanFactory() {
        return new ProxyBeanFactory();
    }

}
